<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Shapes Module Level 1: parsing shape-outside with valid position values</title>
<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
<link rel="help" href="https://drafts.csswg.org/css-values-4/#typedef-position">
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/8695">
<meta name="assert" content="shape-outside positions support the full '<position>' grammar.">
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<script src="../../../css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_valid_value("shape-outside", "circle(at 10%)", "circle(at 10% 50%)");
test_valid_value("shape-outside", "circle(at 20% 30px)");
test_valid_value("shape-outside", "circle(at 30px center)", "circle(at 30px 50%)");
test_valid_value("shape-outside", "circle(at 40px top)", "circle(at 40px 0%)");
test_valid_value("shape-outside", "circle(at bottom 10% right 20%)", "circle(at calc(80%) calc(90%))");
test_valid_value("shape-outside", "circle(at bottom right)", "circle(at 100% 100%)");
test_valid_value("shape-outside", "circle(at center)", "circle(at 50% 50%)");
test_valid_value("shape-outside", "circle(at center 50px)", "circle(at 50% 50px)");
test_valid_value("shape-outside", "circle(at center bottom)", "circle(at 50% 100%)");
test_valid_value("shape-outside", "circle(at center center)", "circle(at 50% 50%)");
test_valid_value("shape-outside", "circle(at center left)", "circle(at 0% 50%)");
test_valid_value("shape-outside", "circle(at left)", "circle(at 0% 50%)");
test_valid_value("shape-outside", "circle(at left bottom)", "circle(at 0% 100%)");
test_valid_value("shape-outside", "circle(at left center)", "circle(at 0% 50%)");
test_valid_value("shape-outside", "circle(at right 40%)", "circle(at 100% 40%)");
test_valid_value("shape-outside", "circle(at right 30% top 60px)", "circle(at calc(70%) 60px)");
test_valid_value("shape-outside", "circle(at top)", "circle(at 50% 0%)");
test_valid_value("shape-outside", "circle(at top center)","circle(at 50% 0%)");
test_valid_value("shape-outside", "circle(at top 0% right calc(10% * sign(1em - 1px)))", "circle(at calc(100% - (10% * sign(1em - 1px))) 0%)");
test_valid_value("shape-outside", "circle(at top 0% right calc(10% * sibling-index()))", "circle(at calc(100% - (10% * sibling-index())) 0%)");
</script>
</body>
</html>
